#include <windows.h>	// Needed for searching directories

// Single node in a list of file names of training examples
struct ExampleNode
{
	bool _label;
	char path[100];
	char name[100];
	ExampleNode* next;
	ExampleNode* previous;
};

// A list of file names of training examples
class ExampleSet
{
	public:
		ExampleSet(char* directory, bool label);	// Constructor
		ExampleSet(const ExampleSet &init);			// Copy Constructor
		~ExampleSet();								// Destructor

		// Member function
		void AddToSet(char* directory, bool label);				// Add new file names
		bool AddToSet(char* directory, char* ext, bool label);	// Add new file names
		float GetSizeOfSet();									// Get the size of the data when loaded into memory
		void PrintSet();										// Useful for debugging

		// Member variables
		int _n;								// Total number of file names
		int _pos;							// Number of positive examples
		int _neg;							// Number of negative examples
		ExampleNode* _head;					// Top of the list
		ExampleNode* _tail;					// End of the list
};

